Function Reference


_GUIToolTip_HitTest

Retrieves the information that a ToolTip control maintains about a tool

 #include <GuiToolTip.au3>
_GUIToolTip_HitTest ( $hWnd, $hTool, $iX, $iY )

Parameters

$hWnd Handle to the ToolTip control (returned by _GUIToolTip_Create.)
$hTool Handle to the window that contains the tool
$iX X position to test
$iY Y position to test

Return Value

Returns an array with the following format:
    [0] - Comma separated string displaying TTF_ flags used
        TTF_IDISHWND = Indicates that $iID is the window handle to the tool instead of the ID
        TTF_CENTERTIP = Centers the window below the tool specified by $iID
        TTF_RTLREADING = Indicates that text will be displayed in the opposite direction
        TTF_SUBCLASS = Indicates that the control should subclass the tool's window to intercept messages
        TTF_TRACK = Positions the control next to the tool to which it corresponds
        TTF_ABSOLUTE = Positions the window at the same coordinates provided by TTM_TRACKPOSITION
        TTF_TRANSPARENT = Causes the control to forward mouse messages to the parent window
        TTF_PARSELINKS = Indicates that links in the control text should be parsed
    [1] - Handle to the window that contains the tool
    [2] - Identifier of the tool
    [3] - X coordinate of the upper left corner of the rectangle
    [4] - Y coordinate of the upper left corner of the rectangle
    [5] - X coordinate of the lower right corner of the rectangle
    [6] - Y coordinate of the lower right corner of the rectangle
    [7] - Handle to the instance that contains the string resource for the tool
    [8] - Text for the tool
    [9] - Application-defined value associated with the tool

Remarks

This message can only be used when the tool has the $TTF_TRACK flag set. _GUIToolTip_HitTest will fail if $TTF_TRACK is not set, regardless if the hit point is in the tools rectangle or not.

Example

#include <GUIConstantsEx.au3>
#include <GUIToolTip.au3>
#include <MsgBoxConstants.au3>
Global $hToolTip, $aPos, $hAdd
; Press g to display the current tooltip information.
HotKeySet("g", "GetInfo")
Example()

Func Example()
    Local $hGUI = GUICreate(StringTrimRight(@ScriptName, 4), 350, 200)

    Local $iAdd = GUICtrlCreateButton("Button ToolTip", 30, 32, 130, 28)
    $hAdd = GUICtrlGetHandle($iAdd)

    $hToolTip = _GUIToolTip_Create($hGUI, $TTS_CLOSE + $TTS_BALLOON)

    _GUIToolTip_AddTool($hToolTip, 0, "X: " &@TAB & " Y: " & @TAB, $hAdd)

    Local $hIcon = _WinAPI_LoadShell32Icon(15)

    _GUIToolTip_SetTitle($hToolTip, 'Title', $hIcon)
    GUISetState()
    $aPos = MouseGetPos()
    _GUIToolTip_TrackPosition($hToolTip, $aPos[0] + 10, $aPos[1] + 20)
    _GUIToolTip_TrackActivate($hToolTip, True, 0, $hAdd)
    _GUIToolTip_UpdateTipText($hToolTip, 0, $hAdd, "X: " & $aPos[0] & " Y: " & $aPos[1])
    While 1
        Sleep(10)
        $aPos = MouseGetPos()
        _GUIToolTip_TrackPosition($hToolTip, $aPos[0] + 10, $aPos[1] + 20)
        _GUIToolTip_UpdateTipText($hToolTip, 0, $hAdd, "X: " & $aPos[0] & " Y: " & $aPos[1])
        If GUIGetMsg() = $GUI_EVENT_CLOSE Then ExitLoop
    WEnd
    _GUIToolTip_Destroy($hToolTip)
EndFunc   ;==>Example
Func GetInfo()
    $aTool = _GUIToolTip_HitTest($hToolTip, $hAdd, $aPos[0], $aPos[1])
    MsgBox($MB_SYSTEMMODAL, "Tooltip info", "Flags: " & @TAB & _GUIToolTip_BitsToTTF($aTool[0]) & @CRLF & _
            "HWnd: " & @TAB & $aTool[1] & @CRLF & _
            "ID: " & @TAB & $aTool[2] & @CRLF & _
            "Left X:" & @TAB & $aTool[3] & @CRLF & _
            "Left Y:" & @TAB & $aTool[4] & @CRLF & _
            "Right X:" & @TAB & $aTool[5] & @CRLF & _
            "Right Y:" & @TAB & $aTool[6] & @CRLF & _
            "Instance:" & @TAB & $aTool[7] & @CRLF & _
            "Text:" & @TAB & $aTool[8] & @CRLF & _
            "lParam:" & @TAB & $aTool[9])
EndFunc   ;==>GetInfo